Digital hvac controller for navigating information based on two or more inputs

ABSTRACT

In some examples, a device can control one or more heating, ventilation, and air conditioning (HVAC) components within a building and control a digital user interface. The device includes a dial, the digital user interface, and processing circuitry. The processing circuitry is configured to scroll, in response to detecting a set of user inputs to one or both of the digital user interface and the dial, through a sequence of carousel screens for display on the digital user interface and display, on the digital user interface after a period of time following a most recent user input of the set of user inputs, a default carousel screen of the sequence of carousel screens. Additionally, the processing circuitry is configured to display, on the digital user interface, an idle screen corresponding to the default carousel screen of the sequence of carousel screens.

This application claims the benefit of:

U.S. Provisional Patent Application No. 62/943,731, filed Dec. 4, 2019;

U.S. Provisional Patent Application No. 62/943,729, filed Dec. 4, 2019;

U.S. Provisional Patent Application No. 62/943,734, filed Dec. 4, 2019;

U.S. Provisional Patent Application No. 62/943,733, filed Dec. 4, 2019;and

U.S. Provisional Patent Application No. 62/943,735, filed Dec. 4, 2019,the entire content of each being incorporated herein by reference.

TECHNICAL FIELD

The disclosure relates to heating, ventilation, and air condition (HVAC)systems and thermostats for buildings.

BACKGROUND

A heating, ventilation, and air conditioning (HVAC) controller cancontrol a variety of devices such as a furnace, a heat pump including ageothermal heat pump, a boiler, air conditioning unit, forced aircirculation, and other similar equipment to control the internal climateconditions of a building. In some examples, a thermostat can controldifferent devices depending on the outside temperature, temperatureinside the building, the time of day, and other factors. To simplify theexplanation, an environmental control system will be referred to as anHVAC system, unless otherwise noted.

SUMMARY

In general, this disclosure describes a heating, ventilation, and airconditioning (HVAC) controller including a display which can show anyone or combination of a set point temperature for an area, a currenttemperature of the area, and one or more other parameters. The HVACcontroller may include a user interface including a digital displayconfigured to show one or more screens of a first set of screens. Thefirst set of screens may represent a sequence of “carousel” screens,such that when the HVAC controller transitions from displaying a firstscreen to a second screen on the digital display, the HVAC controllertransitions from the first screen to a screen which is adjacent to thefirst screen in the first set of screens.

In some examples, the HVAC controller may change the screen shown on thedigital display in response to one or more user inputs to the digitaluser interface. These one or more user inputs may represent “swipes” onthe digital user interface. In some examples, the HVAC controller maychange the screen shown on the digital display in response to a rotationof a dial on the HVAC controller. In this way, the HVAC controller maychange the screens based on two or more types of inputs, which isbeneficial to improve a user experience with the HVAC controller ascompared with HVAC controllers which do not update displayed data basedon two or more types of inputs.

Each screen of the first set of screens may be associated with one ormore screens of a second set of screens. The second set of screens mayrepresent “details” screens which include at least some information notdisplayed on carousel screens. For example, each details screen that isassociated with a carousel screen may include additional informationcorresponding to the respective carousel screen which is not included inthe carousel screen itself. In this way, the screens displayed by theHVAC controller may represent a hierarchy of screens, such that it ispossible to scroll laterally through the first set of screens and alsomove vertically between the first set of screens and correspondingscreens of the second set of screens. It may be beneficial for the HVACcontroller to change the screen displayed by the digital display bothvertically and laterally so that information displayed by the HVACcontroller is more easily navigable as compared with HVAC controllerswhich do not allow a change in display both laterally and vertically.

In some examples, a device for controlling one or more HVAC componentswithin a building includes a rotatable dial, a digital user interface,and processing circuitry. The processing circuitry is configured to, inresponse to receiving a first rotation input via the rotatable dialwhile the digital user interface displays a first screen, cause asetpoint of the device to change in order to regulate a temperaturewithin the building. In response to receiving a first touch input at thedigital user interface while the digital user interface displays thefirst screen, the processing circuitry is configured to cause a menu ofoptions being displayed on the digital user interface to change. Inresponse to receiving a second rotation input via the rotatable dialwhile the digital user interface displays a second screen, theprocessing circuitry is configured to cause a selection being displayedon the digital user interface to change, and in response to receiving asecond touch input via the digital user interface while the digital userinterface displays the second screen, the processing circuitry isconfigured to cause the selection being displayed on the digital userinterface to change.

In some examples, a method for controlling one or more HVAC componentswithin a building includes, in response to receiving a first rotationinput via a rotatable dial while a digital user interface displays afirst screen, causing, by processing circuitry, a setpoint of the deviceto change. The method further includes, in response to receiving a firsttouch input at the digital user interface while the digital userinterface displays the first screen, causing, by the processingcircuitry, a menu of options to be displayed on the digital userinterface to change. Additionally, the method includes, in response toreceiving a second rotation input via the rotatable dial while thedigital user interface displays a second screen, causing, by theprocessing circuitry, a selection being displayed on digital userinterface to change and in response to receiving a second touch inputvia the digital user interface while the digital user interface displaysthe second screen, causing, by the processing circuitry, the selectionbeing displayed on the digital user interface to change.

In some examples, a non-transitory computer-readable medium includesinstructions for causing one or more processors of a device forcontrolling one or more HVAC components within a building to, inresponse to receiving a first rotation input via a rotatable dial whilea digital user interface displays a first screen, cause a setpoint ofthe device to change, and in response to receiving a first touch inputat the digital user interface while the digital user interface displaysthe first screen, cause a menu of options to be displayed on the digitaluser interface to change. Additionally, the instructions cause the oneor more processors to, in response to receiving a second rotation inputvia the rotatable dial while the digital user interface displays asecond screen, cause a selection being displayed on the digital userinterface to change, and in response to receiving a second touch inputvia the digital user interface while the digital user interface displaysthe second screen, cause the selection being displayed on the digitaluser interface to change.

In some examples, a device for controlling one or more HVAC componentswithin a building and controlling a digital user interface includes adial, the digital user interface, and processing circuitry. Theprocessing circuitry is configured to scroll, in response to detecting aset of user inputs to one or both of the digital user interface and thedial, through a sequence of carousel screens for display on the digitaluser interface and display, on the digital user interface after a periodof time following a most recent user input of the set of user inputs, adefault carousel screen of the sequence of carousel screens.Additionally, the processing circuitry is configured to display, on thedigital user interface after a period of time following the display ofthe default carousel screen, an idle screen corresponding to the defaultcarousel screen of the sequence of carousel screens.

In some examples, a method for controlling a digital user interface of adevice configured to control one or more HVAC components within abuilding includes scrolling, by processing circuitry in response todetecting a set of user inputs to one or both of the digital userinterface and a dial, through a sequence of carousel screens for displayon the digital user interface and displaying, by the processingcircuitry on the digital user interface after a period of time followinga most recent user input of the set of user inputs, a default carouselscreen of the sequence of carousel screens. Additionally, the methodincludes displaying, by the processing circuitry on the digital userinterface after a period of time following the display of the defaultcarousel screen, an idle screen corresponding to the default carouselscreen of the sequence of carousel screens.

In some examples, a non-transitory computer-readable medium includesinstructions for causing one or more processors of a device forcontrolling one or more HVAC components within a building andcontrolling a digital user interface to scroll, in response to detectinga set of user inputs to one or both of the digital user interface and adial, through a sequence of carousel screens for display on the digitaluser interface and display, on the digital user interface after a periodof time following a most recent user input of the set of user inputs, adefault carousel screen of the sequence of carousel screens.Additionally, the instructions cause the one or more processors todisplay, on the digital user interface after a period of time followingthe display of the default carousel screen, an idle screen correspondingto the default carousel screen of the sequence of carousel screens.

The summary is intended to provide an overview of the subject matterdescribed in this disclosure. It is not intended to provide an exclusiveor exhaustive explanation of the systems, device, and methods describedin detail within the accompanying drawings and description below.Further details of one or more examples of this disclosure are set forthin the accompanying drawings and in the description below. Otherfeatures, objects, and advantages will be apparent from the descriptionand drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating an example heating, ventilation,and air conditioning (HVAC) system in a building, in accordance with oneor more techniques described herein.

FIG. 2 is a block diagram illustrating an example HVAC controllerincluding a digital display, in accordance with one or more techniquesdescribed herein.

FIG. 3 is a conceptual diagram illustrating an example screen hierarchyfor one or more screens which may be displayed by a digital userinterface, in accordance with one or more techniques described herein.

FIG. 4 is a conceptual diagram illustrating a rotation of a dial of anHVAC controller, in accordance with one or more techniques describedherein.

FIG. 5 is a flow diagram illustrating an example operation fornavigating a screen displayed by a digital display, in accordance withone or more techniques described herein.

FIG. 6 is a flow diagram illustrating an example operation fornavigating one or more screens for display by a digital display, inaccordance with one or more techniques described herein.

DETAILED DESCRIPTION

FIG. 1 is a block diagram illustrating an example heating, ventilation,and air conditioning (HVAC) system 10 in a building 12, in accordancewith one or more techniques described herein. HVAC system 10 includesHVAC component(s) 16, a supply air duct 20, a return air duct 22(collectively, “ducts 20, 22”), dampers 24, and air filters 26.Additionally, HVAC system 10 includes an HVAC controller 30 configuredto control HVAC component(s) 16 to regulate one or more parameterswithin building 12. HVAC controller 30 may include a dial 32 and adigital user interface 34.

HVAC system 10 may include one or more devices for regulating anenvironment within building 12. For example, HVAC controller 30 may beconfigured to control the comfort level (e.g., temperature and/orhumidity) in building 12 by activating and deactivating HVACcomponent(s) 16 in a controlled manner. HVAC controller 30 may beconfigured to control HVAC component(s) 16 via a wired or wirelesscommunication link 42. In some examples, a wired communication link 42may connect HVAC component(s) 16 and HVAC controller 30. HVAC controller30 may be a thermostat, such as, for example, a wall mountablethermostat. In some examples, HVAC controller 30 may be programmable toallow for user-defined temperature set points to control the temperatureof building 12. Based on sensed temperature of building 12, HVACcontroller 30 may turn on HVAC component(s) 16 or turn off HVACcomponent(s) 16 in order to reach the user-defined temperature setpoint. Although this disclosure describes HVAC controller 30 (andcontrollers shown in other figures) as controlling HVAC component(s) 16,external computing device 40 may also be configured to perform thesefunctions. The techniques of this disclosure will primarily be describedusing examples related to temperature, but the systems, devices, andmethods described herein may also be used in conjunction with othersensed properties, such as humidity or air quality. In some examples,HVAC controller 30 may be configured to control all of the criticalnetworks of a building, including a security system.

HVAC component(s) 16 may provide heated air (and/or cooled air) via theductwork throughout the building 12. As illustrated, HVAC component(s)16 may be in fluid communication with one or more spaces, rooms, and/orzones in building 12 via ducts 20, 22, but this is not required. Inoperation, when HVAC controller 30 outputs a heat call signal to HVACcomponent(s) 16, HVAC component(s) 16 (e.g., a forced warm air furnace)may turn on (begin operating or activate) to supply heated air to one ormore spaces within building 12 via supply air ducts 20. HVACcomponent(s) 16, which include an air movement device 18 (e.g., a bloweror a fan), can force the heated air through supply air duct 20. In thisexample, cooler air from each space returns to HVAC component(s) 16(e.g. forced warm air furnace) for heating via return air ducts 22.Similarly, when a cool call signal is provided by HVAC controller 30, acooling device (e.g., an air conditioning (AC) unit) of HVACcomponent(s) 16 may turn on to supply cooled air to one or more spaceswithin building 12 via supply air ducts 20. Air movement device 18 mayforce the cooled air through supply air duct 20. In this example, warmerair from each space of building 12 may return to HVAC component(s) 16for cooling via return air ducts 22.

In some examples, HVAC component(s) 16 may include any one orcombination of a fan, a blower, a furnace, a heat pump, an electric heatpump, a geothermal heat pump, an electric heating unit, an AC unit, ahumidifier, a dehumidifier, an air exchanger, an air cleaner, a damper,a valve, and a fan, however this is not required. HVAC component(s) 16may include any device or group of devices which contributes toregulating the environment within building 12 based on signals receivedfrom HVAC controller 30 or contributes to regulating the environmentwithin building 12 independently from HVAC controller 30.

Ducts 20, 22 may include one or more dampers 24 to regulate the flow ofair, but this is not required. For example, one or more dampers 24 maybe coupled to HVAC controller 30 and can be coordinated with theoperation of HVAC component(s) 16. HVAC controller 30 may actuatedampers 24 to an open position, a closed position, and/or a partiallyopen position to modulate the flow of air from the one or more HVACcomponents to an appropriate room and/or space in building 12. Dampers24 may be particularly useful in zoned HVAC systems, and may be used tocontrol which space(s) in building 12 receive conditioned air and/orreceives how much conditioned air from HVAC component(s) 16.

In many instances, air filters 26 may be used to remove dust and otherpollutants from the air inside building 12. In the example shown in FIG.1, air filters 26 is installed in return air duct 22 and may filter theair prior to the air entering HVAC component(s) 16, but it iscontemplated that any other suitable location for air filters 26 may beused. The presence of air filters 26 may not only improve the indoor airquality but may also protect the HVAC component(s) 16 from dust andother particulate matter that would otherwise be permitted to enter HVACcomponent(s) 16.

HVAC controller 30 may include any suitable arrangement of hardware,software, firmware, or any combination thereof. For example, HVACcontroller 30 may include processing circuitry comprisingmicroprocessors, digital signal processors (DSPs), application specificintegrated circuits (ASICs), field-programmable gate arrays (FPGAs), orequivalent discrete or integrated logic circuitry, or a combination ofany of the foregoing devices or circuitry. Accordingly, the processingcircuitry may include any suitable structure, whether in hardware,software, firmware, or any combination thereof, to perform the functionsascribed herein to HVAC controller 30.

Although not shown in FIG. 1, HVAC controller 30 may include a memoryconfigured to store information within HVAC controller 30 duringoperation. The memory may include a computer-readable storage medium orcomputer-readable storage device. In some examples, the memory includesone or more of a short-term memory or a long-term memory. The memory mayinclude, for example, random access memories (RAM), dynamic randomaccess memories (DRAM), static random access memories (SRAM), magneticdiscs, optical discs, flash memories, or forms of electricallyprogrammable memories (EPROM) or electrically erasable and programmablememories (EEPROM). In some examples, the memory is used to store programinstructions for execution by the processing circuitry of HVACcontroller 30. In some examples, the memory of HVAC controller 30 may beable to store data to and read data from memory included in externalcomputing device 40 and/or memory included in external database 48. Thememory may be used for storing network settings such as an InternetProtocol (IP) address and/or a Media Access Control (MAC) address ofHVAC controller 30, external computing device 40, and/or a router.

In some examples, HVAC controller 30 may include a set of wire terminalswhich make up a terminal block (e.g., a wall plate or a terminal plate)for receiving a set of control wires for one or more HVAC component(s)16 of HVAC system 10. The memory of HVAC controller 30 may store one ormore wiring configurations for HVAC component(s) 16, allowing HVACcontroller 30 to determine which of HVAC component(s) 16 are connectedto HVAC controller 30. The memory of HVAC controller 30 may also storesettings for HVAC system 10 which correspond to the one or more wiringconfigurations for HVAC component(s) 16. For example, if HVAC controller30 is wired to an AC unit of HVAC component(s) 16, HVAC controller 30may determine one or more settings for controlling the AC unit to turnon and turn off

In some examples, the memory of HVAC controller 30 may store programinstructions, which may include one or more program modules, which areexecutable by HVAC controller 30. When executed by HVAC controller 30,such program instructions may cause HVAC controller 30 to provide thefunctionality ascribed to it herein. The program instructions may beembodied in software, firmware, and/or RAMware.

In some examples, HVAC controller 30 may include a dial 32 which islocated at an outer circumference of HVAC controller 30. HVAC controller30 may be fixed to a wall or another surface such that dial 32 may berotated relative to one or more other components (e.g., digital userinterface 34) of HVAC controller 30. Dial 32 may represent a userinterface such that processing circuitry of HVAC controller 30 mayreceive, dial 32 and/or dial circuitry electrically connected to dial32, information indicative of a user input. In some examples, the userinput may represent a user selection of a set point parameter value(e.g., a set point temperature), a user selection of information to bedisplayed by HVAC controller 30, or a user selection of another setting.In some examples, dial 32 may smoothly rotate with respect to digitaluser interface 34. In some examples, dial 32 may rotate with one or moresteps such that as dial 32 rotates, dial 32 “snaps” into position afterevery interval of rotational distance. In some examples, dial 32 maysmoothly rotate with respect to digital user interface 34 and HVACcontroller 30 may output an audio signal (e.g., a clicking noise) forevery interval of rotational position (e.g., every one degree) in whichdial 32 rotates.

In some examples, dial 32 does not move inwards in response to a forceapplied to dial 32. For example, dial 32 may rotate about a center axiswhich passes through a center of dial 32 without moving along the centeraxis in response to one or more forces applied to dial 32. When HVACcontroller 30 is mounted on a vertical surface such as a wall, HVACcontroller 30 may prevent dial 32 from depressing inwards towards thevertical surface while allowing the dial 32 to rotate.

In some examples, dial 32 may include a set of light-emitting diodes(LEDs) configured to illuminate a portion or a whole of dial 32, butthis is not required. The processing circuitry of HVAC controller 30 mayselectively illuminate one or more LEDs of the set of LEDs in order toindicate a set point temperature or convey other information. In someexamples, the set of LEDs included in dial 32 may illuminate dial 32 toindicate that HVAC system 10 is in a heating mode or indicate that HVACsystem 10 is in a cooling mode. For example, when HVAC system 10 is in aheating mode (e.g., HVAC controller 30 is outputting one or moreinstructions for HVAC component(s) 16 to increase a temperature withinbuilding 12), the LEDs of dial 32 cause dial 32 to illuminate at a firstcolor. When HVAC system 10 is in a cooling mode (e.g., HVAC controller30 is outputting one or more instructions for HVAC component(s) 16 todecrease a temperature within building 12), the LEDs of dial 32 causedial 32 to illuminate at a second color. In this way, the LEDs of dial32 may indicate whether HVAC system 10 is operating in the heating modeor the cooling mode.

Digital user interface 34 may include information relating to one ormore aspects of an area in which HVAC controller 30 is located (e.g., aroom in which HVAC controller 30 is located, a building in which HVACcontroller 30 is located, an area outside of a building in which HVACcontroller 30 is located, or any combination thereof). Digital userinterface 34 may be round in shape and digital user interface 34 may belocated an area within a circumference of dial 32 such that edges ofdial 32 are visible around an outer circumference of digital userinterface 34. At least part of dial 32 and digital user interface 34 mayrepresent an outer surface of HVAC controller 30, allowing dial 32 anddigital user interface 34 to receive user input.

In some examples, at least a portion of digital user interface 34includes a digital display. The digital display may represent a userinterface which permits a user to input various operating parameters(e.g., temperature set points, humidity set points, fan set points,starting times, ending times, schedule times, diagnostic limits,configuration settings, responses to alerts, and instructions to changea screen) to HVAC controller 30. In some examples, digital userinterface 34 may represent a physical user interface that is accessibleat HVAC controller 30 and may include a touch screen (e.g., a full colortouch screen display) and/or a distinct keypad. The digital display ofdigital user interface 34 may include any suitable display. In someexamples, digital user interface 34 may include any one or combinationof a liquid crystal display (LCD), an e-ink display, fixed segmentdisplay, or a dot matrix LCD display. In one or more examples wheredigital user interface 34 includes a distinct keypad, the distinctkeypad may include a numerical keypad, a system of buttons, a controlknob, or any combination thereof. HVAC controller 30 may, in some cases,display information and/or accept user inputs via the user interface ofexternal computing device 40.

A user may interact with HVAC controller 30 through a mobile phone, atablet, a computer, or another device. For example, user devices 8A-8N(collectively, “user devices 8”) may communicate with HVAC controller 30via network 6. HVAC controller 30 may, in some examples, be configuredto communicate directly with network 6 without communicating withnetwork 6 via a gateway device (e.g., a Wi-Fi router) within building12. In some examples, HVAC controller 30 may receive instructions fromone or more of user devices 8. The instructions may include, forexample, a request to change a set point temperature for an area withinbuilding 12. HVAC controller 30 may change the set point temperature inresponse to receiving the instruction. In turn, HVAC controller 30 maycontrol HVAC component(s) 16 to control the temperature within building12 to reach the new set point.

In some examples, digital user interface 34 may include a presencesensitive device to detect user inputs to HVAC controller 30. Examplepresence-sensitive input displays include a resistive touchscreen, asurface acoustic wave touchscreen, a capacitive touchscreen, aprojective capacitance touchscreen, a pressure sensitive screen, anacoustic pulse recognition touchscreen, or another presence-sensitivedisplay technology. Digital user interface 34 of HVAC controller 30 mayfunction as an output device using any one or more display devices, suchas a liquid crystal display (LCD), dot matrix display, light emittingdiode (LED) display, organic light-emitting diode (OLED) display, e-ink,or similar monochrome or color display capable of outputting visibleinformation to a user. The user interface presented by the display ofHVAC controller 30 may allow a user to program settings of HVACcontroller 30, set temperature zones for building 12, configure desiredtemperatures for building 12 for different times of the day or days ofthe week, or other operating parameters. Digital user interface 34 ofHVAC controller 30 may also be used to present user queries (e.g., whatroom HVAC controller 30 is installed in, what the address of building 12is, what HVAC component(s) 16 are connected to HVAC controller 30,etc.). Such queries may aid in installing and/or configuring HVACcontroller 30 (e.g. when first connecting HVAC controller 30 to HVACcomponent(s) 16 of HVAC system 10).

In some examples, digital user interface 34 may be configured to displayany one of a plurality of screens, wherein each screen of the pluralityof screens is related to a specific one or more parameters or one ormore topics corresponding to the building in which HVAC controller isplaced. For example, the plurality of screens may include one or moretime and outdoor temperature screens, one or more inside temperaturescreens, one or more air quality screens, one or more water usagescreens, one or more energy usage screens, and one or more securityscreens, however this is not required. Additionally, or alternatively,the plurality of screens may include other types of screens. In someexamples, the processing circuitry of HVAC controller 30 may receive asignal or a sequence of signals indicative of a user selection of ascreen of the plurality of screens for display by HVAC controller 30.For example, HVAC controller 30 may allow the set of screens to bescrolled across digital user interface 34.

In some examples, the plurality of screens may include a first set ofscreens which represent a set of carousel screens. As described herein,the “set of carousel screens” refer to a set of screens which arearranged in a sequence of carousel screens, each carousel screen of thesequence of carousel screens being associated with a respective theme ofa set of themes. The set of themes may include an indoor temperaturetheme, an outdoor temperature theme, an air quality theme, a waterconsumption theme, an energy consumption theme, and a security theme, orany combination thereof. Additionally, or alternatively, the set ofthemes may include one or more other themes.

When digital user interface 34 shows a carousel screen corresponding tothe air quality theme, for example, digital user interface 34 maydisplay information relating to an air quality within building 12 oroutside of building 12. For example, digital user interface 34 maydisplay an air quality value within building 12, wherein the air qualityvalue is measured by an air quality sensor which is configured tocommunicate with HVAC controller 30 or located within HVAC controller30. While digital user interface 34 displays the carousel screencorresponding to the air quality theme, however, digital user interface34 might not display information corresponding to other themes, such astemperature or security, as examples.

At a point in time, HVAC controller 30 may display a carousel screen ofthe set of carousel screens on digital user interface 34. HVACcontroller 30 may be configured to transition the carousel screendisplayed on the digital user interface 34 by cycling through thesequence of carousel screens. Since the sequence of carousel screens isarranged in an order, HVAC controller 30 may be configured to cycleforwards and/or backwards through the sequence of carousel screens.

In some examples, the plurality of screens compatible for display byuser interface 34 may also include a second set of screens representinga set of details screens, and a third set of screens representing a setof idle screens. As described herein, the “set of details screens” mayinclude at least some information which is not included by the set ofcarousel screens. For example, each details screen that is associatedwith a carousel screen may include additional information correspondingto the respective carousel screen which is not included in the carouselscreen itself. In this way, a details screen corresponding to a carouselscreen may be associated with the same theme as the respective carouselscreen.

In some examples, the plurality of screens compatible for display byuser interface 34 may also include a third set of screens representing aset of idle screens. As described herein, the “set of idle screens” mayrepresent one or more screens displayed by user interface 34 while HVACcontroller 30 is operating in an idle state. Each idle screen of the setof idle screens may correspond to a respective carousel screen of theset of carousel screens. In some examples, each idle screen of the setof idles screens may be associated with a same theme of a correspondingcarousel screen of the set of carousel screens.

In some examples, when a period of time elapses since a most recent userinput is received by HVAC controller 30, HVAC controller 30 may enter anidle state. When HVAC controller 30 is in the idle state, the processingcircuitry of HVAC controller 30 may output an idle screen for display bydigital user interface 34. In some examples, the idle screen may includea set point temperature for an area within building 12 and/or a currenttemperature of the area within building 12, but this is not required. Insome examples, HVAC controller 30 may select the idle screen based onuser input received by HVAC controller 30. In some examples, HVACcontroller 30 may select the idle screen based on information receivedfrom network 6. In any case, when the period of time elapses since HVACcontroller 30 receives the most recent user input, HVAC controller 30may enter the idle state and display the idle screen on digital userinterface 34.

In some examples, responsive to detecting a rotation of dial 32 whileHVAC controller 30 is in the idle state, HVAC controller 30 transitionsout of the idle state to a temperature set point mode. HVAC controller30 may change a temperature set point for an area within building 12 inresponse to detecting the rotation of dial 32. In other words, HVACcontroller 30 may determine that a rotation of dial 32 while HVACcontroller 30 is in the idle state represents a user request to change atemperature set point. In transitioning out of the idle state, theprocessing circuitry of HVAC controller 30 may display the temperatureset point for the area within building 12 on digital user interface 34.Additionally, HVAC controller 30 may display the temperature set pointchanging as dial 32 rotates. For example, the digital user interface 34may show the temperature setpoint cycle through a range of degrees,where each change from one degree to another degree is reflected ondigital user interface 34. In some examples, HVAC controller 30 may emita noise each time the temperature set point changes from one degreevalue to another degree value. The noise may represent a clicking noisea, a tapping noise, or another type of noise.

HVAC controller 30 may be configured to perform one or more otheractions in response to a rotation of dial 32 in addition to changing thetemperature set point or alternatively to changing the temperature setpoint. For example, digital user interface 34 may receive a touch inputwhich causes HVAC controller 30 to transition from a temperature setpoint mode to a display screen mode. When HVAC controller 30 transitionsto the display screen mode, HVAC controller 30 may change a screendisplayed on digital user interface 34 in response to detecting arotation of dial 32. For example, digital user interface 34 may displayone or more of the set of carousel screens. As discussed above, the setof carousel screens represent a sequence of carousel screens, such thata change from one carousel screen to another carousel screen representsa change to an adjacent carousel screen of the sequence of carouselscreens. In some examples, when dial 32 stops rotating, HVAC controller30 may continue to display a carousel screen of the set of carouselscreens displayed by digital user interface 34 at the time in which dial32 stops rotating.

Additionally, or alternatively, HVAC controller 30 may be configured tochange the carousel screen displayed by digital user interface 34 inresponse to one or more touch inputs to digital user interface 34 whenHVAC controller is in the display screen mode. For example, theprocessing circuitry of HVAC controller 30 may detect a “swipe” input todigital user interface 34. In response to detecting the swipe input,HVAC controller 30 may transition digital user interface 34 fromdisplaying a first carousel screen to a second carousel screen, wherethe first carousel screen and the second carousel screen are adjacent inthe sequence of carousel screens. In this way, HVAC controller 30 may beconfigured to change the screen displayed on digital user interface 34based on one or both of a rotation of dial 32 and a touch input todigital user interface 34.

It may be beneficial for HVAC controller 30 to have the ability tochange the carousel screen based on one or both of the rotation of dial32 and a touch input to digital user interface 34, so that a userinteraction with HVAC controller 30 is improved as compared with HVACcontrollers that do not allow display change based on more than one typeof user input. In other words, by transitioning HVAC controller 30 froma set point mode where a temperature set point is changed responsive toa rotation of dial 32 to a display screen mode where the screendisplayed by digital user interface 34 is changed responsive to arotation of dial 32 and/or a touch input to digital user interface 34,HVAC controller 30 may provide a user with an efficient user experience.

HVAC controller 30 may include a communication device (not illustratedin FIG. 1) to allow HVAC controller 30 to communicate via a wired orwireless connection 44 to external computing device 40. Thecommunication device may include a Bluetooth transmitter and receiver, aWi-Fi transmitter and receiver, a Zigbee transceiver, a near-fieldcommunication transceiver, or other circuitry configured to allow HVACcontroller 30 to communicate with external computing device 40. In someexamples, the communication device may allow HVAC controller 30 toexchange data with external computing device 40. Examples of exchangeddata include a desired temperature for building 12, HVAC component(s) 16connected to HVAC controller 30, error codes, geographic location,estimated energy usage and cost, and/or other operating parameters orsystem performance characteristics for HVAC system 10.

HVAC controller 30 may communicate via wired or wireless connection 44with external computing device 40. External computing device 40 may be,include, or otherwise be used in combination with a mobile phone,smartphone, tablet computer, personal computer, desktop computer,personal digital assistant, router, modem, remote server or cloudcomputing device, and/or related device allowing HVAC controller 30 tocommunicate over a communication network such as, for example, theInternet or other wired or wireless connection. Communicating via thewired or wireless connection 44 may allow HVAC controller 30 to beconfigured, controlled, or otherwise exchange data with externalcomputing device 40. In some examples, HVAC controller 30 communicatingvia wired or wireless connection 44 may allow a user to set up HVACcontroller 30 when first installing the controller in building 12. Insome examples, HVAC controller 30 and external computing device 40communicate through a wireless network device such as a router or aswitch. In other examples, HVAC controller 30 and external computingdevice 40 communicate through a wired connection such as an ethernetport, USB connection, or other wired communication network.

HVAC controller 30 may, via the communication device, communicate via awired or wireless connection 46 with external database 48. In someexamples, wired or wireless connection 46 enables HVAC controller 30 tocommunicate with external database 48 via a wireless connection whichincludes a network device such as a router, ethernet port, or switch.HVAC controller 30 and external database 48 may also communicate througha wired connection such as an ethernet port, USB connection, or otherwired communication network. Communicating via the wired or wirelessconnection 46 may allow HVAC controller 30 to exchange data withexternal database 48. As such, external database 48 may be at a locationoutside of building 12. In some examples, external database 48 may be,include, or otherwise be used in combination with a remote server, cloudcomputing device, or network of controllers configured to communicatewith each other. For example, HVAC controller 30 may receive data fromHVAC controllers in nearby buildings through the internet or other city-or wide-area network. HVAC controller 30 may include the onboarddatabase because it is unable to communicate via the communicationdevice.

In some examples, external database 48 may be, or otherwise be includedin, or accessed via, external computing device 40 (e.g., smartphone,mobile phone, tablet computer, personal computer, etc.). For example,HVAC controller 30 may communicate via a Wi-Fi network connection with asmartphone device to exchange data with external database 48. Bycommunicating via wired or wireless connection 46, HVAC controller 30may exchange data with external database 48.

In some examples, HVAC controller 30 may display a setpoint as a brightwhite light at moving around a perimeter of HVAC controller 30. As dial32 rotates, the light may move with dial 32 to show a selected setpoint.If the setpoint is changed via a mobile application on one or more ofuser devices 8, the light may move on HVAC controller 30 to show theselected setpoint. An application of one of user devices 8 may enable auser to view one or more aspects of HVAC controller 30.

In some examples, if a Buoy water valve is installed, HVAC controller 30may receive details on water usage and leak status. In some examples, ifa security system is installed, HVAC controller 30 may control thesecurity system.

FIG. 2 is a block diagram illustrating an example configuration of theHVAC controller 30 of FIG. 1, in accordance with one or more techniquesdescribed herein. As seen in FIG. 2, HVAC controller 30 includes dial32, digital user interface 34, processing circuitry 52, memory 54,communication circuitry 56, sensor(s) 58, and terminal 62. Sensor(s) 58may, in some examples, include a temperature sensor 60. HVAC controller30 may be configured to communicate with HVAC component(s) 16 viaterminal 62 and/or communicate with user devices 8 via network 6.

HVAC controller 30 may be configured to control HVAC component(s) 16 inorder to regulate one or more parameters of a space (e.g., a building,one or more rooms within a building, a large vehicle, or a vessel). Insome examples, HVAC controller 30 regulates a temperature within thespace. HVAC controller 30 may regulate the temperature of the space byusing HVAC component(s) 16 to decrease a temperature of the space if thecurrent temperature of the space is greater than a first set pointtemperature and/or increase a temperature of the space using HVACcomponent(s) 16 if the current temperature of the space is less than asecond set point temperature. In some examples, the first set pointtemperature (e.g., a cooling set point temperature) is less than thesecond set point temperature (e.g., a heating set point temperature). Insome examples, the first set point temperature is equal to the secondset point temperature.

Processing circuitry 52 may include microprocessors, DSPs, ASICs, FPGAs,or equivalent discrete or integrated logic circuitry, or a combinationof any of the foregoing devices or circuitry. Accordingly, processingcircuitry 52 may include any suitable structure, whether in hardware,software, firmware, or any combination thereof, to perform the functionsascribed herein to HVAC controller 30.

In some examples, memory 54 includes a computer-readable storage mediumor computer-readable storage device. In some examples, memory 54includes one or more of a short-term memory or a long-term memory.Memory 54 may include, for example, RAM, DRAM, SRAM, magnetic discs,optical discs, flash memories, or forms of EPROM or EEPROM. In someexamples, memory 54 is used to store program instructions for executionby the processing circuitry of HVAC controller 30. In some examples, thememory of HVAC controller 30 may be able to store data to and read datafrom memory included in external computing device 40 and/or memoryincluded in external database 48. The memory may be used for storingnetwork settings such as an Internet Protocol (IP) address and/or aMedia Access Control (MAC) address of HVAC controller 30, externalcomputing device 40, and/or a router.

Communication circuitry 56 may include any suitable hardware, firmware,software or any combination thereof for communicating with anotherdevice, such as user devices 8 or other devices. Under the control ofprocessing circuitry 52, communication circuitry 56 may receive downlinktelemetry from, as well as send uplink telemetry to, one of user devices8 or another device with the aid of an internal or external antenna.Communication circuitry 56 may include a Bluetooth transmitter andreceiver, a Wi-Fi transmitter and receiver, a Zigbee transceiver, anear-field communication transceiver, or other circuitry configured toallow HVAC controller 30 to communicate with one or more remote devicessuch as user devices 8. In some examples, communication circuitry 56 mayallow HVAC controller 30 to exchange data with external computing device40 of FIG. 1. Examples of exchanged data include a desired temperaturefor the space, one or more control parameters for HVAC component(s) 16,error codes, geographic location, estimated energy usage and cost,and/or other operating parameters or system performance characteristicsfor HVAC component(s) 16.

In some examples, HVAC controller 30 includes one or more sensor(s) 58including temperature sensor 60. In some examples, temperature sensor 60is located within a housing of HVAC controller 30. In some examples,temperature sensor 60 is located remotely from HVAC controller 30 andmay communicate with HVAC controller 30 via communication circuitry 56or terminal 62. For example, temperature sensor 60 may be located in thesame room or the same area as HVAC controller 30 while being separatefrom HVAC controller 30 such that heat generated from components of HVACcontroller 30 does not affect a temperature signal generated bytemperature sensor 60. It may be beneficial for temperature sensor 60 tobe located separately from HVAC controller 30 in order to obtain anaccurate temperature reading. In some examples where temperature sensor60 is located within the housing of HVAC controller 30, HVAC controller30 may prevent components from affecting a temperature signal generatedby temperature sensor 60. In some examples, at least a portion of thehousing of HVAC controller 30 may include stainless steel and thehousing may be coated with a material which hides fingerprints. In someexamples, the term “housing” may be used herein to describe an outersurface of HVAC controller 30, including on outer surface of dial 32, anouter surface of digital user interface 34, and an outer face of HVACcontroller 30 which is fixed to a wall or another surface.

In some examples, a housing of HVAC controller 30 may be substantiallycylindrical in shape and dial 32 may represent a ring-shaped piece thatis located at an outer circumference of HVAC controller 30. In someexamples, HVAC controller 30 includes a first face configured to bemounted on a plate which is fixed to a wall or another surface, a secondface including a display, and a third face representing a side of HVACcontroller 30, the third face extending around a circumference of HVACcontroller 30. Dial 32 may include the third face of HVAC controller 30.In some examples, dial 32 is configured to rotate with respect to one ormore other components of HVAC controller 30. For example, dial 32 isconfigured to rotate with respect to digital user interface 34. In someexamples, dial 32 is configured to rotate in response to a user input.Dial 32 may be electrically connected to dial circuitry (not illustratedin FIG. 2) which may generate an electrical signal indicative of one ormore rotational parameters (e.g., a rotational position, a rotationalvelocity, and/or a rotational acceleration) of dial 32. The dialcircuitry may output the electrical signal indicative of the one or morerotational parameters to processing circuitry 52. In some examples, thedial circuitry is part of processing circuitry 52.

Digital user interface 34 may be located on a face (e.g., the secondface) of HVAC controller 30. In some examples, digital user interface 34may, in some cases, be substantially circular in shape. In someexamples, digital display may include a presence sensitive device todetect user inputs to HVAC controller 30. Example presence-sensitiveinput displays include a resistive touchscreen, a surface acoustic wavetouchscreen, a capacitive touchscreen, a projective capacitancetouchscreen, a pressure sensitive screen, an acoustic pulse recognitiontouchscreen, or another presence-sensitive display technology. Digitaluser interface 34 of HVAC controller 30 may function as an output deviceusing any one or more display devices, such as an LCD, dot matrixdisplay, LED display, OLED display, e-ink, or similar monochrome orcolor display capable of outputting visible information to a user.

In some examples, digital user interface 34 may display a set ofcarousel screens, which may represent a sequence of screens. In someexamples, each screen of the set of carousel screens may be related toone or more parameters of an environment in which HVAC controller 30 islocated, one or more settings of HVAC controller 30, and/or one or moreother aspects associated with HVAC controller 30. For example, the setof carousel screens may include a time & outdoor temperature screen, acomfort (e.g., inside temperature) screen, an air quality screen, awater screen, an energy screen, and a security screen. In some examples,digital user interface 34 may scroll through the carousel of screensbased on two or more kinds of user input, such as a rotation of dial 32and/or swipe inputs received by digital user interface 34. In someexamples, digital user interface 34 may scroll through the carousel ofscreens without user input.

Processing circuitry 52 may be configured to set and/or change one ormore temperature set points corresponding to a space (e.g., a spacewithin building 12). For example, a first set point temperature mayrepresent a cooling set point temperature and a second set pointtemperature may represent a heating set point temperature. In someexamples, if HVAC controller 30 is in a cooling mode and the currenttemperature is greater than the cooling set point temperature,processing circuitry 52 may control HVAC component(s) 16 to regulate thetemperature in the space to reach the cooling set point temperature overa period of time based on the current temperature and the cooling setpoint temperature. In some examples, if HVAC controller 30 is in aheating mode and the current temperature is less than the heating setpoint temperature, processing circuitry 52 may control HVAC component(s)16 to regulate the temperature in the space to reach the heating setpoint temperature over a period of time based on the current temperatureand the heating set point temperature.

In some example, processing circuitry 52 is configured to receive aninstruction to change and/or set one or more temperature set points ofHVAC controller 30 from dial circuitry electrically connected to dial32, where the instruction is indicative of a user selection of one ormore temperature set points using dial 32. For example, in response to afirst rotation of dial 32, processing circuitry 52 may set the coolingtemperature set point value to a first temperature value if a coolingset point mode of HVAC controller 30 is activated. In response to asecond rotation of dial 32, processing circuitry 52 may set the heatingtemperature set point value to a second temperature value if a heatingset point mode of HVAC controller 30 is activated. Processing circuitry52 may control whether HVAC controller is in the heating set point modeor the cooling set point mode based on one or more user inputs receivedfrom digital user interface 34. In some examples, processing circuitry52 is configured to receive an instruction to change and/or set one ormore temperature set points of HVAC controller 30 from one or more ofuser devices 8 via network 6. In any case, processing circuitry 52 maychange the one or more temperature set points in response receivinginstructions to change the one or more temperature set points.

FIG. 3 is a conceptual diagram illustrating an example screen hierarchyfor one or more screens 300 which may be displayed by digital userinterface 34, in accordance with one or more techniques describedherein. The one or more screens 300 include idle screens 302-312,carousel screens 322-332, and details screens 342-352. FIG. 3 isdescribed with respect to HVAC system 10 and HVAC controller 30 of FIG.1 and FIG. 2. However, the techniques of FIG. 3 may be performed bydifferent components of HVAC system 10 and HVAC controller 30 or byadditional or alternative systems or devices.

Processing circuitry 52 is configured to control which of screens 300 isdisplayed by digital user interface 34 at any given point in time. Insome examples, processing circuitry 52 may change the screen displayedby digital user interface 34 in response to receiving one or more userinputs. In some examples, processing circuitry 52 may automaticallychange the screen displayed by digital user interface 34 withoutreceiving any user inputs. Screens 300 are organized in a hierarchywhich determines a manner in which processing circuitry 52 sets,changes, and transitions the screen displayed by digital user interface34. As seen in FIG. 3, idle screens 302-212 are located at a “top” ofthe hierarchy, carousel screens 322-332 are located below the idlescreens 302-212 in the hierarchy, and details screens 342-352 arelocated below the carousel screens 322-332 in the hierarchy at the“bottom” of the hierarchy.

Screen transitions in the vertical direction 362 may be referred toherein as “vertical transitions.” Screen transitions in the horizontaldirection 364 may be referred to herein as “horizontal transitions.” Forexample, a transition from displaying carousel screen 328 on digitaluser interface 34 to displaying idle screen 308 on digital userinterface 34 may represent a vertical transition, since the transitionis an upwards moment through the hierarchy along vertical direction 362.A transition from displaying carousel screen 328 on digital userinterface 34 to displaying carousel screen 330 on digital user interface34 may represent a horizontal transition, since the transition is asideways moment through the hierarchy along horizontal direction 364. Agroup of screens which are arranged vertically in the hierarchy may bereferred to as a “vertical grouping of screens.” For example, idlescreen 304, carousel screen 324, and details screen 344 represent avertical grouping of screens since idle screen 304 is an idle screencorresponding to carousel screen 324 and details screen 344 is a detailsscreen corresponding to carousel screen 324.

In some examples, processing circuitry 52 selects a vertical grouping ofscreens as a default vertical grouping of screens. The default verticalgroup of screens represents a vertical group of screens which HVACcontroller 30 defaults to while HVAC controller 30 is in an idle state.HVAC controller 30 may enter the idle state when a period of timeelapses following a most recent user input to HVAC controller 30. HVACcontroller 30 may remain in the idle state until HVAC controller 30receives a user input. In one example, processing circuitry 52 mayselect idle screen 304, carousel screen 324, and details screen 344(collectively, “screens 304, 324, 344”) as the default vertical group ofscreens. During the idle state, processing circuitry 52 may output theidle screen of the default vertical group of screens for display bydigital user interface 34. As such, when screens 304, 324, 344 representthe default vertical group of screens, processing circuitry 52 displaysidle screen 304 while HVAC controller 30 is in the idle state. When HVACcontroller 30 receives a user input (e.g., a touch input to digital userinterface 34) after a time when HVAC controller 30 is in the idle state,processing circuitry 52 may vertically transition from displaying idlescreen 304 to displaying carousel screen 324 on digital user interface34.

When processing circuitry 52 displays carousel screen 324 in response toa user touch input to digital user interface 34, HVAC controller 30 maybe in a display screen mode, and processing circuitry 52 may transitionthe screen displayed by digital user interface 34 based on one or bothof swipe inputs to digital user interface 34 and rotations of dial 32.That is, processing circuitry 52 may transition from displaying carouselscreen 324 to displaying carousel screen 326 in response to detecting arightward swipe input to digital user interface 34 or detecting arightward rotation of dial 32 and processing circuitry 52 may transitionfrom displaying carousel screen 324 to displaying carousel screen 322 inresponse to detecting a leftward swipe input to digital user interface34 or detecting a leftward rotation of dial 32. It may be beneficial forprocessing circuitry 52 to change the carousel screen based on two ormore types of user input, such as rotations of dial 32 and/or swipeinputs to digital user interface 34, so that a user experience with HVACcontroller 30 is improved as compared with one or more HVAC controllerswhich do not change display screens based on two or more types of userinput. Additionally, in some cases, it may be beneficial for processingcircuitry 52 to change the carousel screen specifically based onrotations of dial 32 and/or swipe inputs to digital user interface 34since rotating dial 32 and swiping on digital user interface 34represent easy and natural ways to interact with HVAC controller 30.

In some examples, processing circuitry 52 may cycle through more thanone carousel screen of carousel screens 322-332 within a short period oftime (e.g., less than 10 seconds). For example, processing circuitry 52may transition from one carousel screen to another carousel screen afterdetecting a rotation of dial 32 by a threshold number of degrees. Inother words, if dial 32 rotates continuously, processing circuitry 52may cycle through several carousel screens. When dial 32 stops rotating,processing circuitry 52 may maintain a current carousel screen fordisplay by digital user interface 34. For example, in response to onerotation of dial 32, processing circuitry 52 may transition fromcarousel screen 324 to carousel screen 326, transition from carouselscreen 326 to carousel screen 328, and transition from carousel screen328 to carousel screen 330. Processing circuitry 52 may stoptransitioning carousel screens at carousel screen 330 when dial 32 stopsrotating. Subsequently, processing circuitry 52 may detect a “tap” touchinput to digital user interface 34, causing processing circuitry 52 totransition carousel screen 330 to details screen 350.

In some examples, processing circuitry 52 may transition from displayingone carousel screen to an adjacent carousel screens in response todetecting one swipe input to digital user interface 34. A swipe inputmay represent a horizontal user touch movement across digital userinterface 34. Horizontal swipe inputs may include rightwards swipeinputs and leftwards swipe inputs. When processing circuitry 52 detectstwo consecutive rightwards swipe inputs to digital user interface 34,processing circuitry 52 may transition from displaying carousel screen324 to displaying carousel screen 326 responsive to the first rightwardsswipe and transition from displaying carousel screen 326 to displayingcarousel screen 328 responsive to the second rightwards swipe.

Processing circuitry 52 may transition from a carousel screen to arespective details screen in response to receiving a tap input todigital user interface 34. When digital user interface 34 is displayingcarousel screen 322, processing circuitry 52 may transition digital userinterface 34 from displaying carousel screen 322 to displaying detailsscreen 342 responsive to detecting a tap input to digital user interface34. When digital user interface 34 is displaying carousel screen 324,processing circuitry 52 may transition digital user interface 34 fromdisplaying carousel screen 324 to displaying details screen 344responsive to detecting a tap input to digital user interface 34. Whendigital user interface 34 is displaying carousel screen 326, processingcircuitry 52 may transition digital user interface 34 from displayingcarousel screen 326 to displaying details screen 346 responsive todetecting a tap input to digital user interface 34. When digital userinterface 34 is displaying carousel screen 328, processing circuitry 52may transition digital user interface 34 from displaying carousel screen328 to displaying details screen 348 responsive to detecting a tap inputto digital user interface 34. When digital user interface 34 isdisplaying carousel screen 330, processing circuitry 52 may transitiondigital user interface 34 from displaying carousel screen 330 todisplaying details screen 350 responsive to detecting a tap input todigital user interface 34. When digital user interface 34 is displayingcarousel screen 332, processing circuitry 52 may transition digital userinterface 34 from displaying carousel screen 332 to displaying detailsscreen 352 responsive to detecting a tap input to digital user interface34.

Processing circuitry 52 may transition from displaying a carousel screento displaying a corresponding idle screen in response to a period oftime elapsing since a most recent user input to HVAC controller 30. Insome examples, the period of time is 45 seconds. When digital userinterface 34 displays carousel screen 322 for a period of time after amost recent user input to HVAC controller 30, processing circuitry 52may transition to displaying idle screen 302 on digital user interface34. When digital user interface 34 displays carousel screen 324 for aperiod of time after a most recent user input to HVAC controller 30,processing circuitry 52 may transition to displaying idle screen 304 ondigital user interface 34. When digital user interface 34 displayscarousel screen 326 for a period of time after a most recent user inputto HVAC controller 30, processing circuitry 52 may transition todisplaying idle screen 306 on digital user interface 34. When digitaluser interface 34 displays carousel screen 328 for a period of timeafter a most recent user input to HVAC controller 30, processingcircuitry 52 may transition to displaying idle screen 308 on digitaluser interface 34. When digital user interface 34 displays carouselscreen 330 for a period of time after a most recent user input to HVACcontroller 30, processing circuitry 52 may transition to displaying idlescreen 310 on digital user interface 34. When digital user interface 34displays carousel screen 332 for a period of time after a most recentuser input to HVAC controller 30, processing circuitry 52 may transitionto displaying idle screen 312 on digital user interface 34.

Processing circuitry 52 of may be configured to cause a set point tochange in response to receiving a first rotation input via a dial 32while digital user interface 34 displays a first screen. In someexamples, the first screen includes one of idle screens 302-312 or oneof carousel screens 322-332. As such, a default function of dial 32 maybe to control one or more set point temperature values. Subsequently,processing circuitry 52 may be configured to cause a menu of options tobe displayed on digital user interface 34 to change in response toreceiving a touch input at the digital user interface 34 while thedigital user interface 34 displays the first screen. In some examples,the first touch input represents a user selection of a menu button onone of carousel screens 322-332, causing digital user interface 34 todisplay a corresponding one of details screens 342-352.

Processing circuitry 52 is configured to cause a selection beingdisplayed on digital user interface 34 to change in response toreceiving a rotation input via dial 32 while digital user interface 34 asecond screen. In other words, while digital user interface 34 displaysone of details screens 342-352, dial 32 may control the selection beingdisplayed on digital user interface 34 rather than controlling one ormore temperature set points. Additionally, processing circuitry 52 maycause the selection being displayed on digital user interface 34 whilethe digital user interface 34 displays the second screen. In otherwords, touch input to digital user interface 34 may control theselection being displayed on digital user interface 34 in a similarmanner to a rotation of dial 32 while digital user interface 34 displaysone of details screens 342-352. Thus, when some screens are beingdisplayed dial 32 and digital user interface 34 may functional asalternative inputs that perform the same function, e.g., navigating amenu hierarchy. When other screens are being displayed, dial 32 anddigital user interface 34 may perform different functions. As oneexample, when an idle screen or home screen is being displayed arotation of dial 32 may cause a setpoint to change whereas a touch inputat digital user interface 34 may cause a menu option to be selected. Insome examples, digital user interface 34 is a full color touch screen.

FIG. 4 is a conceptual diagram illustrating a rotation of a dial 432 ofan HVAC controller 430, in accordance with one or more techniquesdescribed herein. As seen in FIG. 4, a first dial position “DIALPOSITION 1” represents a rotational position of dial 432 where point 412is located at a top of HVAC controller, and a second dial position “DIALPOSITION 2” represents a rotational position of dial 432 the first dialposition. Point 412 represents a reference point to show one examplerotation of dial 432. Point 412 is not necessarily visible on the faceof dial 432. In one example, the clockwise rotation of dial 432 causesprocessing circuitry of HVAC controller 430 to increase temperaturedisplayed on digital user interface 434 to from 72° to 74°, but this isnot required. The processing circuitry may perform one or more otheractions in response to detecting the rotation of dial 432.

FIG. 5 is a flow diagram illustrating an example operation fornavigating a screen displayed by digital user interface 34, inaccordance with one or more techniques described herein. FIG. 5 isdescribed with respect to HVAC system 10 and HVAC controller 30 of FIG.1 and FIG. 2. Additionally, FIG. 5 is described with respect to idlescreens 302-312, carousel screens 322-332, and details screens 342-352of FIG. 3. However, the techniques of FIG. 5 may be performed bydifferent components of HVAC system 10 and HVAC controller 30 or byadditional or alternative devices.

Processing circuitry 52 of HVAC controller 30 may be configured to causea set point to change in response to receiving a first rotation inputvia a dial 32 while digital user interface 34 displays a first screen(502). In some examples, the first screen includes one of idle screens302-312 or one of carousel screens 322-332. As such, a default functionof dial 32 may be to control one or more set point temperature values.Subsequently, processing circuitry 52 may be configured to cause a menuof options to be displayed on the digital user interface 34 to change inresponse to receiving a first touch input at the digital user interface34 while the digital user interface 34 displays the first screen (504).In some examples, the first touch input represents a user selection of amenu button on one of carousel screens 322-332, causing digital userinterface 34 to display a corresponding one of details screens 342-352.

Processing circuitry 52 is configured to cause a selection beingdisplayed on the digital user interface 34 to change in response toreceiving a second rotation input via the dial 32 while the digital userinterface 34 displays a second screen (506). In other words, whiledigital user interface 34 displays one of details screens 342-352, dial32 may control the selection being displayed on digital user interface34 rather than controlling one or more temperature set points.Additionally, processing circuitry 52 may cause the selection beingdisplayed on the digital user interface 34 to change in response toreceiving a second touch input via the digital user interface 34 whilethe digital user interface 34 displays the second screen (508). In otherwords, touch input to digital user interface 34 may control theselection being displayed on digital user interface 34 in a similarmanner to a rotation of dial 32 while digital user interface 34 displaysone of details screens 342-352. Thus, when some screens are beingdisplayed dial 32 and digital user interface 34 may functional asalternative inputs that perform the same function, e.g., navigating amenu hierarchy. When other screens are being displayed, dial 32 anddigital user interface 34 may perform different functions. As oneexample, when an idle screen or home screen is being displayed arotation of dial 32 may cause a setpoint to change whereas a touch inputat digital user interface 34 may cause a menu option to be selected. Insome examples, the digital user interface 34 includes a full color touchscreen.

FIG. 6 is a flow diagram illustrating an example operation fornavigating one or more screens for display by digital user interface 34,in accordance with one or more techniques described herein. FIG. 6 isdescribed with respect to HVAC system 10 and HVAC controller 30 of FIG.1 and FIG. 2. Additionally, FIG. 6 is described with respect to idlescreens 302-312, carousel screens 322-332, and details screens 342-352of FIG. 3. However, the techniques of FIG. 6 may be performed bydifferent components of HVAC system 10 and HVAC controller 30 or byadditional or alternative devices. Processing circuitry 52 may beconfigured to scroll through a sequence of carousel screens 322-332 fordisplay on the digital user interface 34 in response to detecting a setof user inputs to one or both of the digital user interface 34 and thedial 32 (602). Subsequently, digital user interface 34 may display, onthe digital user interface 34 after a period of time following a mostrecent user input of the set of user inputs, a default carousel screenof the sequence of carousel screens (604). Processing circuitry 52 maydisplay, on the digital user interface 34 after a period of timefollowing the display of the default carousel screen, an idle screencorresponding to the default carousel screen of the sequence of carouselscreens (606).

In one or more examples, the functions described may be implemented inhardware, software, firmware, or any combination thereof If implementedin software, the functions may be stored on or transmitted over as oneor more instructions or code on a computer-readable medium and executedby a hardware-based processing unit. Computer-readable media may includecomputer-readable storage media, which corresponds to a tangible mediumsuch as data storage media, or communication media including any mediumthat facilitates transfer of a computer program from one place toanother, e.g., according to a communication protocol. In this manner,computer-readable media generally may correspond to (1) tangiblecomputer-readable storage media which is non-transitory or (2) acommunication medium such as a signal or carrier wave. Data storagemedia may be any available media that can be accessed by one or morecomputers or one or more processors to retrieve instructions, codeand/or data structures for implementation of the techniques described inthis disclosure. A computer program product may include acomputer-readable medium.

By way of example, and not limitation, such computer-readable storagemedia can include one or more of RAM, ROM, EEPROM, CD-ROM or otheroptical disk storage, magnetic disk storage, or other magnetic storagedevices, flash memory, or any other medium that can be used to storedesired program code in the form of instructions or data structures andthat can be accessed by a computer. Also, any connection is properlytermed a computer-readable medium. For example, if instructions aretransmitted from a website, server, or other remote source using acoaxial cable, fiber optic cable, twisted pair, digital subscriber line(DSL), or wireless technologies such as infrared, radio, and microwave,then the coaxial cable, fiber optic cable, twisted pair, DSL, orwireless technologies such as infrared, radio, and microwave areincluded in the definition of medium. It should be understood, however,that computer-readable storage media and data storage media do notinclude connections, carrier waves, signals, or other transitory media,but are instead directed to non-transitory, tangible storage media. Diskand disc, as used herein, includes compact disc (CD), laser disc,optical disc, digital versatile disc (DVD), floppy disk and Blu-raydisc, where disks usually reproduce data magnetically, while discsreproduce data optically with lasers. Combinations of the above shouldalso be included within the scope of computer-readable media.

Instructions may be executed by one or more processors, such as one ormore DSPs, general purpose microprocessors, ASICs, FPGAs, or otherequivalent integrated or discrete logic circuitry. Accordingly, the term“processor” or “processing circuitry,” as used herein may refer to anyof the foregoing structure or any other structure suitable forimplementation of the techniques described herein. In addition, in someaspects, the functionality described herein may be provided withindedicated hardware and/or software modules. Also, the techniques couldbe fully implemented in one or more circuits or logic elements.

The techniques of this disclosure may be implemented in a wide varietyof devices or apparatuses, including a wireless handset, an integratedcircuit (IC) or a set of ICs (e.g., a chip set). Various components,modules, or units are described in this disclosure to emphasizefunctional aspects of devices configured to perform the disclosedtechniques, but do not necessarily require realization by differenthardware units. Rather, as described above, various units may becombined in a single hardware unit or provided by a collection ofinteroperative hardware units, including one or more processors asdescribed above, in conjunction with suitable software and/or firmware.

Various examples have been described. These and other examples arewithin the scope of the following claims.

What is claimed is:
 1. A device for controlling one or more heating,ventilation, and air conditioning (HVAC) components within a building,wherein the device comprises: a rotatable dial; a digital userinterface; and processing circuitry configured to: in response toreceiving a first rotation input via the rotatable dial while thedigital user interface displays a first screen, cause a setpoint of thedevice to change in order to regulate a temperature within the building;in response to receiving a first touch input at the digital userinterface while the digital user interface displays the first screen,cause a menu of options being displayed on the digital user interface tochange; in response to receiving a second rotation input via therotatable dial while the digital user interface displays a secondscreen, cause a selection being displayed on the digital user interfaceto change; and in response to receiving a second touch input via thedigital user interface while the digital user interface displays thesecond screen, cause the selection being displayed on the digital userinterface to change.
 2. The device of claim 1, wherein the first screencomprises a first carousel screen of a sequence of carousel screens,wherein the first carousel screen is higher than the second screenwithin a menu hierarchy.
 3. The device of claim 2, wherein theprocessing circuitry is configured to display, using the digital userinterface, a first idle screen of a set of idle screens corresponding tothe first carousel screen in response to not receiving an input within aperiod of time.
 4. The device of claim 1, wherein the second screenrepresents a details screen of a set of details screens, wherein thedetails screen includes details associated with the carousel screen ofthe sequence of carousel screens.
 5. The device of claim 1, wherein thesecond screen comprises a screen accessed via the first screen.
 6. Thedevice of claim 1, wherein the first screen is a first carousel screenof a sequence of carousel screens, wherein the first carousel screenrepresents a default carousel screen and wherein the processingcircuitry is further configured to: receive information indicative of aninstruction to scroll through at least some of the sequence of carouselscreens, wherein the scroll ends on a second carousel screen of thesequence of carousel screens; and set, after a first period of timefollowing the scroll, the second carousel screen to represent thedefault carousel screen.
 7. The device of claim 6, wherein theprocessing circuitry is further configured to display, after a secondperiod of time following the scroll, a second idle screen of a set ofidle screens corresponding to the second carousel screen of the sequenceof carousel screens.
 8. The device of any of claim 1, wherein therotatable dial is circular in shape, and wherein the digital userinterface is circular in shape.
 9. The device of claim 8, wherein therotatable dial represents a ring which is configured to be located at anouter circumference of the digital user interface, and wherein therotatable dial is configured to rotate about a center point of thedigital user interface while the digital user interface remains fixed.10. The device of any of claim 1, wherein the processing circuitry isfurther configured to receive information indicative of the first touchinput, wherein the first touch input represents a user input to a menubutton of the first screen.
 11. A method for controlling one or moreheating, ventilation, and air conditioning (HVAC) components within abuilding, wherein the method comprises: in response to receiving a firstrotation input via a rotatable dial while a digital user interfacedisplays a first screen, causing, by processing circuitry, a setpoint ofthe device to change; in response to receiving a first touch input atthe digital user interface while the digital user interface displays thefirst screen, causing, by the processing circuitry, a menu of options tobe displayed on the digital user interface to change; in response toreceiving a second rotation input via the rotatable dial while thedigital user interface displays a second screen, causing, by theprocessing circuitry, a selection being displayed on digital userinterface to change; and in response to receiving a second touch inputvia the digital user interface while the digital user interface displaysthe second screen, causing, by the processing circuitry, the selectionbeing displayed on the digital user interface to change.
 12. The methodof claim 11, wherein the first screen comprises a first carousel screenof a sequence of carousel screens, wherein the first carousel screen ishigher than the second screen within a menu hierarchy.
 13. The method ofclaim 12, further comprising displaying, by the processing circuitryusing the digital user interface, a first idle screen of a set of idlescreens corresponding to the first carousel screen in response to notreceiving an input within a period of time.
 14. The method of claim 11,wherein the second screen represents a details screen of a set ofdetails screens, wherein the details screen includes details associatedwith the carousel screen of the sequence of carousel screens.
 15. Themethod of claim 11, wherein the second screen comprises a screenaccessed via the first screen.
 16. The method of claim 11, wherein thefirst screen is a first carousel screen of a sequence of carouselscreens, wherein the first carousel screen represents a default carouselscreen and wherein the method further comprises: receiving, by theprocessing circuitry, information indicative of an instruction to scrollthrough at least some of the sequence of carousel screens, wherein thescroll ends on a second carousel screen of the sequence of carouselscreens; and setting, by the processing circuitry after a first periodof time following the scroll, the second carousel screen to representthe default carousel screen.
 17. The method of claim 16, wherein themethod further comprises displaying, by the processing circuitry after asecond period of time following the scroll, a second idle screen of aset of idle screens corresponding to the second carousel screen of thesequence of carousel screens.
 18. The method of claim 11, wherein therotatable dial is circular in shape, and wherein the digital userinterface is circular in shape.
 19. The method of claim 11, furthercomprising receiving, by the processing circuitry, informationindicative of the first touch input, wherein the first touch inputrepresents a user input to a menu button of the first screen.
 20. Anon-transitory computer-readable medium comprising instructions forcausing one or more processors of a device for controlling one or moreheating, ventilation, and air conditioning (HVAC) components within abuilding to: in response to receiving a first rotation input via arotatable dial while a digital user interface displays a first screen,cause a setpoint of the device to change; in response to receiving afirst touch input at the digital user interface while the digital userinterface displays the first screen, cause a menu of options to bedisplayed on the digital user interface to change; in response toreceiving a second rotation input via the rotatable dial while thedigital user interface displays a second screen, cause a selection beingdisplayed on the digital user interface to change; and in response toreceiving a second touch input via the digital user interface while thedigital user interface displays the second screen, cause the selectionbeing displayed on the digital user interface to change.